home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Experimental BBS Explossion 3
/
Experimental BBS Explossion III.iso
/
disk
/
dspeed.zip
/
FSEEK.8
next >
Wrap
Text File
|
1993-05-03
|
3KB
|
65 lines
;Program to maximize the potential of IBM and compatables' floppy
;disc drives....also makes them quieter.
;
;DOS sets floppy seek time at 8ms.. most drives will run at 3ms
;Drive parameter table works in multiples of 2. "Turbo" boards are
;faster, so experiment 'til you get errors and increment by next higher
;value.
;
;Accepts command line number and inserts in the appropriate memory
;location - if none,displays help screen and accepts keyboard input.
;
;The one glitch is that if you won't listen to reason and keep putting
;in invalid numbers, the thing won't exit. Of course, it seems pretty
;farfetched for someone to invoke a program and then refuse to use
;it.
JMP MAIN
CR equ 0d
LF equ 0a
data_table db 0ff,0ff,0ef,0ef,0df,0df,0cf ;can only use 2,4,6,8ms
Help_mess db'Usage:fseek {value}',CR,LF,'$'
_Action db'Now Changing Head Seek Time to '
SEEK db'?'
db' ms',CR,LF,'$'
_Error db'Incorrect Value; Valid entry:2-8',CR,LF,'$'
MAIN: mov si,081 ; check for command line entry
mov cx,4
COMMAND: lodsb
KEYB: cmp al,031 ; valid figure? =>2
ja _PARSE ; ok,process
loopnz COMMAND
jmp ERROR ; otherwise, cockpit error
_PARSE: xor ah,ah
cmp al,038 ; valid figure? =<8
ja ERROR ; somebody goofed!!
mov SEEK,al ; finally we can go to work
sub al,032 ; change to binary
mov si,offset data_table ; appropriate that sucker
add si,ax ;
lodsb ;
xor dx,dx
push dx
pop es
es mov [0522],ax ; Put new value into
mov dx,offset _Action ; DOS drive parameter table
mov ah,09 ;
int 021
int 020 ; we're done..simple,huh?
ERROR: mov dx,offset Help_mess
mov ah,09
int 021
mov dx,offset _Error
mov ah,09
int 021
mov ah,00
int 016
jmp KEYB